An evolving family of standards, specifications, and technical reports is being developed by the Third Generation Partnership Project (3GPP™) to define parameters associated with second and third generation wireless communication systems. These systems include a Global System for Mobile communication (GSM) and data access technologies such as General Packet Radio Service (GPRS), enhanced GPRS (EGPRS), and Enhanced Data rates for GSM Evolution (EDGE). The acronyms GSM, GPRS, EGPRS, and EDGE are subsumed in “GSM EDGE radio access network (GERAN).” Additional information regarding these technologies may be found in European Telecommunications Standards Institute (ETSI) Technical Specification TS 101 855 V8.17.0, Digital Cellular Telecommunications System (Phase 2+); Technical Specifications and Technical Reports for a GERMAN-based 3GPP™ System (3GPP™) TS 01.01 version 8.17.0 Release 1999) (published June 2005). Additional information regarding the 3GPP™ may be found at its website.
Current GERAN standardizations may use modulation and forward error correction (FEC) coding schemes (MCSs) that include a one-third rate convolution coding operation followed by puncturing to a desired code rate. A resulting punctured block may be modulated according to one of several modulation types and interleaved across several time-division multiple-access (TDMA) frames. These MCSs may be denoted MCSI thru MCS9. For example, MCS7, MCS8 and MCS9 may operate using coding rates of R=0.75, 0.82, and 1.0, respectively, and may be encoded and modulated to provide data rates of approximately 45.0 to 59.4 kilobits (kbits)/s per timeslot
A particular MCS may be selected, depending on prevailing signal conditions, to transmit one or more radio link control (RLC) packet data units (PDUs) segmented from a logical link control (LLC) layer. For example, an MCS6radio block may utilize two 37-octet radio bursts to transmit a 74-octet RLC PDU utilizing 8-PSK modulation. An MCS3 radio block, on the other hand, may utilize a single 37-octet radio burst to transmit a 37-octet RLC PDU utilizing GMSK modulation.
A success or failure of decoding the RLC PDU may be sensed at a receiving end of a link and reported to a transmitting end of the link via acknowledge (ACK) or no-acknowledge (NACK) signaling, respectively. If a NACK is received at the transmitting end of the link, the transmission may be repeated utilizing a mechanism referred to as “automatic repeat request” (ARQ). Successive retransmissions may utilize successively more robust MCS levels to increase a likelihood of a successful decode.
Alternatively, encoded bits associated with an RLC PDU and received from a first transmission may be supplemented with a set of additional encoded bits associated with the same RLC PDU sent via a second transmission. An FEC decoder at the receiving end of the communication link may utilize sets of encoded bits from successive transmissions to enhance a decoding probability until a successful decode is obtained. The latter mechanism may be referred to as “hybrid ARQ” (HARQ).
One implementation of HARQ, referred to as “Type II incremental redundancy,” may select each set of additional encoded bits for successive transmissions using a different puncturing scheme for each. This technique may effectively increase a code rate. An information block of N information bits, [S0S1 . . . S10-1], may be encoded as [s0p00p01s1p10p11 . . . sN-1p(N-3)0p(N-3)1], where pk0 and pk1 are parity bits output with a kth systematic bit. Using a simplified example, assume that N=16 without loss of generality, and that any code tail bits are neglected. Until the codeword is correctly decoded, transmission redundancy versions might follow a pattern similar to the following:                Transmission 1: [S0S1 . . . S15]        Transmission 2: [P00P11P20P33 . . . P14,0P15,1]        Transmission 3: [P00P10P23P30 . . . P14,1P15,0]        
On the first transmission, N systematic bits may be sent. If the block is not received correctly, Transmission 2 may be sent using a punctured version of N of the parity bits. This may be combined at the receiver for an additional attempt to decode. If the block is again received incorrectly, Transmission 3 may be sent using another redundancy version of the parity bits. At this point all bits may have been transmitted at least once. A further attempt at decoding may be made. Should the further attempt fail, the redundancy version sequence may be repeated until the block is correctly decoded. Following each transmission, newly-received bits may be combined with those received in previous punctured versions of the block. This may increase an initial data input to the FEC decoder.
Successively-transmitted differently-punctured sets of encoded bits may be sent with successively more robust MCS levels. However, the latter technique may be incompatible between certain MCS levels. Consider, for example, a 74-octet RLC PDU formatted into a 74-octet MCS6 radio block and sent as a first transmission. If the first transmission is not successfully decoded, it may be desirable to re-segment the 74-octet RLC PDU as two 37-octet RLC PDUs for retransmission using MCS3. Since the RLC PDU sizes are different, the data may be re-encoded for the retransmission. The resulting set of encoded bits may be compatible with the set of encoded bits received as the first transmission, for purposes of an FEC decoding operation. It may thus be necessary to discard the set of encoded bits received as the first transmission.
Additional information regarding EGPRS block lengths may be found in 3GPP™ TS 43.064 V6.5.0 (2004-11) Technical Specification 3rd Generation Partnership Project Technical Specification Group GSM/EDGE Radio Access Network; General Packet Radio Service (GPRS); Overall description of the GPRS Radio Interface; Stage 2 (Release 6) (published November 2004).